Skip to content

fix: expose promoted template media slots - #3483

Merged
jrusso1020 merged 1 commit into
mainfrom
fix/template-media-contracts
Aug 25, 2026
Merged

fix: expose promoted template media slots#3483
jrusso1020 merged 1 commit into
mainfrom
fix/template-media-contracts

Conversation

@jrusso1020

Copy link
Copy Markdown
Collaborator

Summary

  • expose carousel, link-card, and closing-card image variables so the template editor can replace brand-owned media
  • make the full message-thread story and end-card claims editable
  • remove heygen-avatar-promo-card from the promoted ad-template set until video variables are supported
  • prevent promoted templates with fixed video elements and unbound image variables
  • regenerate catalog pages, index, and local search artifacts

Validation

  • bun test packages/cli/src/registry/registryBlocks.test.ts
  • HyperFrames 0.8.14 lint passed for share-sheet-carousel, message-thread-reveal, notification-cascade, and ai-chat-reveal
  • HyperFrames 0.8.14 browser check passed for all four edited compositions
  • pre-commit lint, format, typecheck, tracked-artifact, catalog-index, and fallow hooks passed

@mintlify

mintlify Bot commented Aug 25, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
hyperframes 🟢 Ready View Preview Aug 25, 2026, 5:37 AM

💡 Tip: Enable Workflows to automatically generate PRs for you.

@miguel-heygen miguel-heygen left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The promoted-template contract change is internally consistent at this exact head.

  • registryBlocks.test.ts:43-89 now pins the two safety invariants at the promotion boundary: no fixed video elements and no declared image variable without a consumption site.
  • share-sheet-carousel.html:11-15,210-283 binds each product image to both its foreground slide and matching blurred background, plus the logo, through the runtime media-only data-var-src path.
  • message-thread-reveal.html:5-24,1109-1195 exposes the complete narrative while applying replacements with textContent or direct text-node updates; the card image and closing logo use declarative media bindings, leaving messaging chrome untouched. Notification Cascade and AI Chat Reveal expose only their closing-card logo slots.
  • heygen-avatar-promo-card/registry-item.json:4 removes promotion eligibility without deleting the template, matching the contract-v1 inability to replace its dominant MP4 assets.

Audited: the four edited composition HTML files and TEMPLATE contracts; their registry variable manifests; the promotion-safety test; avatar promotion-tag removal; the HFI #655 pin/list seam.

Trusting: generated catalog MDX/index/vector artifacts and the reported full browser/render validation.

All current OSS checks are green. The internal pin must still follow the stated order: publish immutable artifacts for this commit and pass the shared-dev E2E before #655 lands. No merge action.

Verdict: APPROVE
Reasoning: the brand-owned media/narrative slots are complete and safely bound while protected application chrome and fixed-video promotion boundaries remain enforced. — Magi

@jrusso1020
jrusso1020 merged commit 17b6335 into main Aug 25, 2026
51 checks passed
@jrusso1020
jrusso1020 deleted the fix/template-media-contracts branch August 25, 2026 06:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants